package org.easyexcel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import lombok.Getter;
import lombok.Setter;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.FillPatternType;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;

import java.util.Date;

@Getter
@Setter
@HeadRowHeight(20)
public class ExpensesRecordExcelVo {

	// 字符串的头背景设置成粉红 IndexedColors.PINK.getIndex()
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "主卡单位")
	@ColumnWidth(50)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private transient String f_card_dept;//主卡单位

	/**
	 * 使用部门 2019/12/17添加
	 */
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "使用部门")
	@ColumnWidth(13)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private transient String f_use_dept;

	@ExcelProperty(value = "副卡类型")
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private transient String f_subcard_type;//副卡类型

	/**
	 * 车牌号
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "副卡归属")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private String f_car_no;

	/**
	 * 副卡卡号
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "副卡卡号")
	@ColumnWidth(23)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private String f_subcard_no;

	//主卡厂商
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "卡片厂商")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private transient String f_subcard_company;

	/**
	 * 交易类型
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "交易类型")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private String f_trading_type;

	/**
	 * 金额
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ExcelProperty(value = "金额（元）")
	@ColumnWidth(13)
	//@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	//@ContentStyle(horizontalAlignment = HorizontalAlignment.RIGHT, verticalAlignment = VerticalAlignment.CENTER, dataFormat = 2)
	private double f_amount;

	/**
	 * 油数量
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "数量（升）")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	//@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	//@ContentStyle(horizontalAlignment = HorizontalAlignment.RIGHT, verticalAlignment = VerticalAlignment.CENTER, dataFormat = 2)
	private double f_oil_quantity;
	/**
	 * 油品
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "油品")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private String f_oil_type;
	/**
	 * 油价
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "单价（元）")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	//@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	//@ContentStyle(horizontalAlignment = HorizontalAlignment.RIGHT, verticalAlignment = VerticalAlignment.CENTER, dataFormat = 2)
	private Double f_oil_price;

	/**
	 * 主卡余额
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "余额（元）")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	//@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	//@ContentStyle(horizontalAlignment = HorizontalAlignment.RIGHT, verticalAlignment = VerticalAlignment.CENTER, dataFormat = 2)
	private transient Double f_balance;

	/**
	 * 业务时间 2024/04/02添加
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "业务日期")
	@ColumnWidth(13)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private transient String f_business_time;

	/**
	 * 交易时间
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "交易时间")
	@ColumnWidth(20)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private Date f_trading_time;

	/**
	 * 地址
	 */
	@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10, bold = true, color = 65)
	@ExcelProperty(value = "交易地点")
	@ColumnWidth(20)
	@HeadStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 55)
	@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
	@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER, verticalAlignment = VerticalAlignment.CENTER
			,borderBottom = BorderStyle.THIN, borderRight = BorderStyle.THIN, borderTop = BorderStyle.THIN, borderLeft = BorderStyle.THIN)
	private String f_address;

	/**
	 *
	 */
	private long serialVersionUID;
	/**
	 * 客户名称
	 */
	private String f_cunstomer_name;
	/**
	 * 客户编码
	 */
	private String f_cunstomer_no;
	/**
	 * 省份
	 */
	private String f_province;
	/**
	 * 主卡卡号
	 */
	private String f_card_no;
	/**
	 * 持卡人
	 */
	private String f_card_owner;
	/**
	 * 奖励积分
	 */
	private double f_reward_points;
	/**
	 * 主卡余额
	 */
	private double f_oil_amount;
	/**
	 * 入库人
	 */
	private long f_creator_id;
	/**
	 * 入库人姓名
	 */
	private String f_creator_name;
	/**
	 * 更新人
	 */
	private long f_updator_id;
	/**
	 * 更新人姓名
	 */
	private String f_updator_name;
	/**
	 * 导入人ID
	 */
	private long f_importer_id;
	/**
	 * 导入人姓名
	 */
	private String f_importer_name;
	/**
	 * 导入时间
	 */
	private Date f_import_time;
	/**
	 * 消费记录导入文件路径
	 */
	private String f_importfile_url;
	/**
	 * 消费记录文件uuid
	 */
	private String f_uuid;
	/**
	 * 当月圈存金额
	 */
	private transient double f_recharge_amount;
	/**
	 * 当月消费金额
	 */
	private transient double f_consume_amount;
	/**
	 * 机动车数量
	 */
	private transient int f_car_amount;
	/**
	 * 交易年月
	 */
	private transient String f_trading_month;
	/**
	 * 消费记录检索类型
	 */
	private transient String f_analysis_type;
	/**
	 * 油箱容量 2024/03/29添加
	 */
	private transient double f_each_amount;
	/**
	 * 导入的实际交易时间 2024/04/02添加
	 */
	private transient String f_transaction_time;
	/**
	 * 当月积分消费
	 */
	private transient double f_integral_amount;

	/**
	 * 当月积分加油（升）
	 */
	private transient double f_integral_quantity;

}